def fact(n: int) -> int:
    if n == 1:
        return 1
    return n * fact(n - 1)


if __name__ == '__main__':
    fact(5)
    #print(fact(100)) #这是个天文数字，python的整形是不会溢出的（只要内存够大）
